package com.storage.system.service;

import com.storage.common.core.domain.AjaxResult;
import com.storage.common.core.domain.ServiceResponse;
import com.storage.common.core.page.TableDataInfo;
import com.storage.system.domain.StorageShop;
import com.storage.system.domain.StorageUser;

/**
 * 店铺 服务层
 *
 * @author storage
 * @date 2019-08-18
 */
public interface IStorageShopService {
    /**
     * 查询店铺信息
     *
     * @param id 店铺ID
     * @return 店铺信息
     */
    public StorageShop selectStorageShopById(Long id);

    /**
     * 查询店铺列表
     *
     * @param storageShop 店铺信息
     * @return 店铺集合
     */
    public ServiceResponse<TableDataInfo> selectStorageShopList(StorageUser currentUser, StorageShop storageShop, Integer pageNum, Integer pageSize);

    /**
     * 新增店铺
     *
     * @param storageShop 店铺信息
     * @return 结果
     */
    public AjaxResult insertStorageShop(StorageUser currentUer, StorageShop storageShop);

    /**
     * 修改店铺
     *
     * @param storageShop 店铺信息
     * @return 结果
     */
    public AjaxResult updateStorageShop(StorageUser currentUer, StorageShop storageShop);

    /**
     * 删除店铺信息
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public ServiceResponse<Boolean> deleteStorageShopByIds(String ids);

    /**
     * 查询店铺商品销售情况
     *
     * @param storageUser
     * @param storageShop
     * @param pageNum
     * @param pageSize
     * @return
     */
    ServiceResponse<TableDataInfo> queryShopSellOrders(StorageUser storageUser, StorageShop storageShop, Integer pageNum, Integer pageSize);
}
